home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / Add-Ons / 4D / ComboBox 1.1.1 / src / ExtRoutines.h < prev    next >
Text File  |  1996-01-11  |  2KB  |  61 lines

  1. //---------------------------------------------------------------------------------------
  2. //
  3. //    ExtRoutines.h -- Support routines for creating 4D extensions
  4. //
  5. //    Copyright ©1995-1996, Pensacola Christian College
  6. //
  7. //    ======================================================================
  8. //    Change History
  9. //    ======================================================================
  10. //
  11. //    1.0            08/  /95        Steve Dwire
  12. //                                            Initial release
  13. //
  14. //    1.1            11/17/95        Steve Dwire
  15. //                                            Added PostKey code from ACIUS's POSTKEY sample extension.
  16. //
  17. //---------------------------------------------------------------------------------------
  18.  
  19. #ifndef __EXTROUTINES_H__
  20. #define __EXTROUTINES_H__ 1
  21.  
  22. #ifndef __EXTERNAL4D__
  23. #include <Ext4D.h>
  24. #endif
  25.  
  26. #if defined(powerc) || WINVER
  27.  
  28. extern Call4DProcPtr gCall4DAdr;
  29. #define CALL4D(entryPt,pBlock) Call4D(gCall4DAdr,entryPt,pBlock)
  30. void InitExtension(PackagePtr params);
  31. #define LaunchProcess(funcName,resType,resID,stack,procName,procID) \
  32.                 LaunchNativeProcess((XPOINTER)(funcName),(SLONG)stack,(UBYTE*)procName,(SLONG*)procID)
  33. OSErr LaunchNativeProcess (XPOINTER funcName, SLONG stack, UBYTE *procName, SLONG *procID);
  34.  
  35. #else
  36.  
  37. #define InitExtension(params)
  38. #define CALL4D(entryPt,pBlock) Call4D(entryPt,pBlock)
  39. #define LaunchProcess(funcName,resType,resID,stack,procName,procID) \
  40.                 Launch68KProcess(resType,resID,(SLONG)stack,(UBYTE*)procName,(SLONG*)procID)
  41. OSErr Launch68KProcess (SLONG resType, SLONG resID, SLONG stack, UBYTE *procName, SLONG *procID);
  42.  
  43. #endif
  44.  
  45. #define InterProcChar '◊'
  46.  
  47. SWORD GetResID(OSType bType, OSType rType, SWORD localID);
  48. //void Pstrcpy(const UBYTE *source, UBYTE *dest);
  49.  
  50. inline void Pstrcpy(const UBYTE *source, UBYTE *dest)
  51. {
  52.     short index;
  53.     for(index=0; index<(*source+1); index++)
  54.         *(dest+index) = *(source+index);
  55.         
  56.     //BlockMove(source,dest,(*source)+1);
  57. }
  58. void PostKey( unsigned long TheKey, unsigned long TheModifiers, Boolean useAutoKey);
  59.  
  60. #endif
  61.